/**
* (c) Iconify
*
* For the full copyright and license information, please view the license.txt
* files at https://github.com/iconify/iconify
*
* Licensed under MIT.
*
* @license MIT
* @version 1.0.7
*/
!(function () {
"use strict";
const t = Object.freeze({ left: 0, top: 0, width: 16, height: 16 }),
e = Object.freeze({ rotate: 0, vFlip: !1, hFlip: !1 }),
n = Object.freeze({ ...t, ...e }),
o = Object.freeze({ ...n, body: "", hidden: !1 }),
i = Object.freeze({ width: null, height: null }),
r = Object.freeze({ ...i, ...e });
const s = /[\s,]+/;
const c = { ...r, preserveAspectRatio: "" };
function a(t) {
const e = { ...c },
n = (e, n) => t.getAttribute(e) || n;
var o;
return (
(e.width = n("width", null)),
(e.height = n("height", null)),
(e.rotate = (function (t, e = 0) {
const n = t.replace(/^-?[0-9.]*/, "");
function o(t) {
for (; t < 0; ) t += 4;
return t % 4;
}
if ("" === n) {
const e = parseInt(t);
return isNaN(e) ? 0 : o(e);
}
if (n !== t) {
let e = 0;
switch (n) {
case "%":
e = 25;
break;
case "deg":
e = 90;
}
if (e) {
let i = parseFloat(t.slice(0, t.length - n.length));
return isNaN(i) ? 0 : ((i /= e), i % 1 == 0 ? o(i) : 0);
}
}
return e;
})(n("rotate", ""))),
(o = e),
n("flip", "")
.split(s)
.forEach((t) => {
switch (t.trim()) {
case "horizontal":
o.hFlip = !0;
break;
case "vertical":
o.vFlip = !0;
}
}),
(e.preserveAspectRatio = n(
"preserveAspectRatio",
n("preserveaspectratio", "")
)),
e
);
}
const u = /^[a-z0-9]+(-[a-z0-9]+)*$/,
l = (t, e, n, o = "") => {
const i = t.split(":");
if ("@" === t.slice(0, 1)) {
if (i.length < 2 || i.length > 3) return null;
o = i.shift().slice(1);
}
if (i.length > 3 || !i.length) return null;
if (i.length > 1) {
const t = i.pop(),
n = i.pop(),
r = { provider: i.length > 0 ? i[0] : o, prefix: n, name: t };
return e && !f(r) ? null : r;
}
const r = i[0],
s = r.split("-");
if (s.length > 1) {
const t = { provider: o, prefix: s.shift(), name: s.join("-") };
return e && !f(t) ? null : t;
}
if (n && "" === o) {
const t = { provider: o, prefix: "", name: r };
return e && !f(t, n) ? null : t;
}
return null;
},
f = (t, e) =>
!!t &&
!(
("" !== t.provider && !t.provider.match(u)) ||
!((e && "" === t.prefix) || t.prefix.match(u)) ||
!t.name.match(u)
);
function d(t, n) {
const i = (function (t, e) {
const n = {};
!t.hFlip != !e.hFlip && (n.hFlip = !0),
!t.vFlip != !e.vFlip && (n.vFlip = !0);
const o = ((t.rotate || 0) + (e.rotate || 0)) % 4;
return o && (n.rotate = o), n;
})(t, n);
for (const r in o)
r in e
? r in t && !(r in i) && (i[r] = e[r])
: r in n
? (i[r] = n[r])
: r in t && (i[r] = t[r]);
return i;
}
function h(t, e, n) {
const o = t.icons,
i = t.aliases || Object.create(null);
let r = {};
function s(t) {
r = d(o[t] || i[t], r);
}
return s(e), n.forEach(s), d(t, r);
}
function p(t, e) {
const n = [];
if ("object" != typeof t || "object" != typeof t.icons) return n;
t.not_found instanceof Array &&
t.not_found.forEach((t) => {
e(t, null), n.push(t);
});
const o = (function (t, e) {
const n = t.icons,
o = t.aliases || Object.create(null),
i = Object.create(null);
return (
(e || Object.keys(n).concat(Object.keys(o))).forEach(function t(e) {
if (n[e]) return (i[e] = []);
if (!(e in i)) {
i[e] = null;
const n = o[e] && o[e].parent,
r = n && t(n);
r && (i[e] = [n].concat(r));
}
return i[e];
}),
i
);
})(t);
for (const i in o) {
const r = o[i];
r && (e(i, h(t, i, r)), n.push(i));
}
return n;
}
const g = { provider: "", aliases: {}, not_found: {}, ...t };
function m(t, e) {
for (const n in e) if (n in t && typeof t[n] != typeof e[n]) return !1;
return !0;
}
function b(t) {
if ("object" != typeof t || null === t) return null;
const e = t;
if ("string" != typeof e.prefix || !t.icons || "object" != typeof t.icons)
return null;
if (!m(t, g)) return null;
const n = e.icons;
for (const t in n) {
const e = n[t];
if (!t.match(u) || "string" != typeof e.body || !m(e, o)) return null;
}
const i = e.aliases || Object.create(null);
for (const t in i) {
const e = i[t],
r = e.parent;
if (!t.match(u) || "string" != typeof r || (!n[r] && !i[r]) || !m(e, o))
return null;
}
return e;
}
const y = Object.create(null);
function v(t, e) {
const n = y[t] || (y[t] = Object.create(null));
return (
n[e] ||
(n[e] = (function (t, e) {
return {
provider: t,
prefix: e,
icons: Object.create(null),
missing: new Set(),
};
})(t, e))
);
}
function x(t, e) {
return b(e)
? p(e, (e, n) => {
n ? (t.icons[e] = n) : t.missing.add(e);
})
: [];
}
function w(t, e) {
let n = [];
return (
("string" == typeof t ? [t] : Object.keys(y)).forEach((t) => {
("string" == typeof t && "string" == typeof e
? [e]
: Object.keys(y[t] || {})
).forEach((e) => {
const o = v(t, e);
n = n.concat(
Object.keys(o.icons).map(
(n) => ("" !== t ? "@" + t + ":" : "") + e + ":" + n
)
);
});
}),
n
);
}
let k = !1;
function j(t) {
return "boolean" == typeof t && (k = t), k;
}
function A(t) {
const e = "string" == typeof t ? l(t, !0, k) : t;
if (e) {
const t = v(e.provider, e.prefix),
n = e.name;
return t.icons[n] || (t.missing.has(n) ? null : void 0);
}
}
function _(t, e) {
const n = l(t, !0, k);
if (!n) return !1;
return (function (t, e, n) {
try {
if ("string" == typeof n.body) return (t.icons[e] = { ...n }), !0;
} catch (t) {}
return !1;
})(v(n.provider, n.prefix), n.name, e);
}
function C(t, e) {
if ("object" != typeof t) return !1;
if (
("string" != typeof e && (e = t.provider || ""), k && !e && !t.prefix)
) {
let e = !1;
return (
b(t) &&
((t.prefix = ""),
p(t, (t, n) => {
n && _(t, n) && (e = !0);
})),
e
);
}
const n = t.prefix;
if (!f({ provider: e, prefix: n, name: "a" })) return !1;
return !!x(v(e, n), t);
}
function O(t) {
return !!A(t);
}
function S(t) {
const e = A(t);
return e ? { ...n, ...e } : null;
}
function I(t, e) {
t.forEach((t) => {
const n = t.loaderCallbacks;
n && (t.loaderCallbacks = n.filter((t) => t.id !== e));
});
}
let E = 0;
const M = Object.create(null);
function T(t, e) {
M[t] = e;
}
function F(t) {
return M[t] || M[""];
}
var N = {
resources: [],
index: 0,
timeout: 2e3,
rotate: 750,
random: !1,
dataAfterTimeout: !1,
};
function P(t, e, n, o) {
const i = t.resources.length,
r = t.random ? Math.floor(Math.random() * i) : t.index;
let s;
if (t.random) {
let e = t.resources.slice(0);
for (s = []; e.length > 1; ) {
const t = Math.floor(Math.random() * e.length);
s.push(e[t]), (e = e.slice(0, t).concat(e.slice(t + 1)));
}
s = s.concat(e);
} else s = t.resources.slice(r).concat(t.resources.slice(0, r));
const c = Date.now();
let a,
u = "pending",
l = 0,
f = null,
d = [],
h = [];
function p() {
f && (clearTimeout(f), (f = null));
}
function g() {
"pending" === u && (u = "aborted"),
p(),
d.forEach((t) => {
"pending" === t.status && (t.status = "aborted");
}),
(d = []);
}
function m(t, e) {
e && (h = []), "function" == typeof t && h.push(t);
}
function b() {
(u = "failed"),
h.forEach((t) => {
t(void 0, a);
});
}
function y() {
d.forEach((t) => {
"pending" === t.status && (t.status = "aborted");
}),
(d = []);
}
function v() {
if ("pending" !== u) return;
p();
const o = s.shift();
if (void 0 === o)
return d.length
? void (f = setTimeout(() => {
p(), "pending" === u && (y(), b());
}, t.timeout))
: void b();
const i = {
status: "pending",
resource: o,
callback: (e, n) => {
!(function (e, n, o) {
const i = "success" !== n;
switch (((d = d.filter((t) => t !== e)), u)) {
case "pending":
break;
case "failed":
if (i || !t.dataAfterTimeout) return;
break;
default:
return;
}
if ("abort" === n) return (a = o), void b();
if (i) return (a = o), void (d.length || (s.length ? v() : b()));
if ((p(), y(), !t.random)) {
const n = t.resources.indexOf(e.resource);
-1 !== n && n !== t.index && (t.index = n);
}
(u = "completed"),
h.forEach((t) => {
t(o);
});
})(i, e, n);
},
};
d.push(i), l++, (f = setTimeout(v, t.rotate)), n(o, e, i.callback);
}
return (
"function" == typeof o && h.push(o),
setTimeout(v),
function () {
return {
startTime: c,
payload: e,
status: u,
queriesSent: l,
queriesPending: d.length,
subscribe: m,
abort: g,
};
}
);
}
function R(t) {
const e = { ...N, ...t };
let n = [];
function o() {
n = n.filter((t) => "pending" === t().status);
}
return {
query: function (t, i, r) {
const s = P(e, t, i, (t, e) => {
o(), r && r(t, e);
});
return n.push(s), s;
},
find: function (t) {
return n.find((e) => t(e)) || null;
},
setIndex: (t) => {
e.index = t;
},
getIndex: () => e.index,
cleanup: o,
};
}
function L(t) {
let e;
if ("string" == typeof t.resources) e = [t.resources];
else if (((e = t.resources), !(e instanceof Array && e.length)))
return null;
return {
resources: e,
path: t.path || "/",
maxURL: t.maxURL || 500,
rotate: t.rotate || 750,
timeout: t.timeout || 5e3,
random: !0 === t.random,
index: t.index || 0,
dataAfterTimeout: !1 !== t.dataAfterTimeout,
};
}
const z = Object.create(null),
Q = ["https://api.simplesvg.com", "https://api.unisvg.com"],
q = [];
for (; Q.length > 0; )
1 === Q.length || Math.random() > 0.5 ? q.push(Q.shift()) : q.push(Q.pop());
function D(t, e) {
const n = L(e);
return null !== n && ((z[t] = n), !0);
}
function U(t) {
return z[t];
}
function J() {
return Object.keys(z);
}
function $() {}
z[""] = L({ resources: ["https://api.iconify.design"].concat(q) });
const H = Object.create(null);
function B(t, e, n) {
let o, i;
if ("string" == typeof t) {
const e = F(t);
if (!e) return n(void 0, 424), $;
i = e.send;
const r = (function (t) {
if (!H[t]) {
const e = U(t);
if (!e) return;
const n = { config: e, redundancy: R(e) };
H[t] = n;
}
return H[t];
})(t);
r && (o = r.redundancy);
} else {
const e = L(t);
if (e) {
o = R(e);
const n = F(t.resources ? t.resources[0] : "");
n && (i = n.send);
}
}
return o && i ? o.query(e, i, n)().abort : (n(void 0, 424), $);
}
const G = "iconify2",
V = "iconify",
K = V + "-count",
W = V + "-version",
X = 36e5;
function Y(t, e) {
try {
return t.getItem(e);
} catch (t) {}
}
function Z(t, e, n) {
try {
return t.setItem(e, n), !0;
} catch (t) {}
}
function tt(t, e) {
try {
t.removeItem(e);
} catch (t) {}
}
function et(t, e) {
return Z(t, K, e.toString());
}
function nt(t) {
return parseInt(Y(t, K)) || 0;
}
const ot = { local: !0, session: !0 },
it = { local: new Set(), session: new Set() };
let rt = !1;
let st = "undefined" == typeof window ? {} : window;
function ct(t) {
const e = t + "Storage";
try {
if (st && st[e] && "number" == typeof st[e].length) return st[e];
} catch (t) {}
ot[t] = !1;
}
function at(t, e) {
const n = ct(t);
if (!n) return;
const o = Y(n, W);
if (o !== G) {
if (o) {
const t = nt(n);
for (let e = 0; e < t; e++) tt(n, V + e.toString());
}
return Z(n, W, G), void et(n, 0);
}
const i = Math.floor(Date.now() / X) - 168,
r = (t) => {
const o = V + t.toString(),
r = Y(n, o);
if ("string" == typeof r) {
try {
const n = JSON.parse(r);
if (
"object" == typeof n &&
"number" == typeof n.cached &&
n.cached > i &&
"string" == typeof n.provider &&
"object" == typeof n.data &&
"string" == typeof n.data.prefix &&
e(n, t)
)
return !0;
} catch (t) {}
tt(n, o);
}
};
let s = nt(n);
for (let e = s - 1; e >= 0; e--)
r(e) || (e === s - 1 ? (s--, et(n, s)) : it[t].add(e));
}
function ut() {
if (!rt) {
rt = !0;
for (const t in ot)
at(t, (t) => {
const e = t.data,
n = v(t.provider, e.prefix);
if (!x(n, e).length) return !1;
const o = e.lastModified || -1;
return (
(n.lastModifiedCached = n.lastModifiedCached
? Math.min(n.lastModifiedCached, o)
: o),
!0
);
});
}
}
function lt(t, e) {
function n(n) {
let o;
if (!ot[n] || !(o = ct(n))) return;
const i = it[n];
let r;
if (i.size) i.delete((r = Array.from(i).shift()));
else if (((r = nt(o)), !et(o, r + 1))) return;
const s = {
cached: Math.floor(Date.now() / X),
provider: t.provider,
data: e,
};
return Z(o, V + r.toString(), JSON.stringify(s));
}
rt || ut(),
(e.lastModified &&
!(function (t, e) {
const n = t.lastModifiedCached;
if (n && n >= e) return n === e;
if (((t.lastModifiedCached = e), n))
for (const n in ot)
at(n, (n) => {
const o = n.data;
return (
n.provider !== t.provider ||
o.prefix !== t.prefix ||
o.lastModified === e
);
});
return !0;
})(t, e.lastModified)) ||
(Object.keys(e.icons).length &&
(e.not_found && delete (e = Object.assign({}, e)).not_found,
n("local") || n("session")));
}
function ft() {}
function dt(t) {
t.iconsLoaderFlag ||
((t.iconsLoaderFlag = !0),
setTimeout(() => {
(t.iconsLoaderFlag = !1),
(function (t) {
t.pendingCallbacksFlag ||
((t.pendingCallbacksFlag = !0),
setTimeout(() => {
t.pendingCallbacksFlag = !1;
const e = t.loaderCallbacks ? t.loaderCallbacks.slice(0) : [];
if (!e.length) return;
let n = !1;
const o = t.provider,
i = t.prefix;
e.forEach((e) => {
const r = e.icons,
s = r.pending.length;
(r.pending = r.pending.filter((e) => {
if (e.prefix !== i) return !0;
const s = e.name;
if (t.icons[s])
r.loaded.push({ provider: o, prefix: i, name: s });
else {
if (!t.missing.has(s)) return (n = !0), !0;
r.missing.push({ provider: o, prefix: i, name: s });
}
return !1;
})),
r.pending.length !== s &&
(n || I([t], e.id),
e.callback(
r.loaded.slice(0),
r.missing.slice(0),
r.pending.slice(0),
e.abort
));
});
}));
})(t);
}));
}
const ht = (t, e) => {
const n = (function (t, e = !0, n = !1) {
const o = [];
return (
t.forEach((t) => {
const i = "string" == typeof t ? l(t, e, n) : t;
i && o.push(i);
}),
o
);
})(t, !0, j()),
o = (function (t) {
const e = { loaded: [], missing: [], pending: [] },
n = Object.create(null);
t.sort((t, e) =>
t.provider !== e.provider
? t.provider.localeCompare(e.provider)
: t.prefix !== e.prefix
? t.prefix.localeCompare(e.prefix)
: t.name.localeCompare(e.name)
);
let o = { provider: "", prefix: "", name: "" };
return (
t.forEach((t) => {
if (
o.name === t.name &&
o.prefix === t.prefix &&
o.provider === t.provider
)
return;
o = t;
const i = t.provider,
r = t.prefix,
s = t.name,
c = n[i] || (n[i] = Object.create(null)),
a = c[r] || (c[r] = v(i, r));
let u;
u =
s in a.icons
? e.loaded
: "" === r || a.missing.has(s)
? e.missing
: e.pending;
const l = { provider: i, prefix: r, name: s };
u.push(l);
}),
e
);
})(n);
if (!o.pending.length) {
let t = !0;
return (
e &&
setTimeout(() => {
t && e(o.loaded, o.missing, o.pending, ft);
}),
() => {
t = !1;
}
);
}
const i = Object.create(null),
r = [];
let s, c;
return (
o.pending.forEach((t) => {
const { provider: e, prefix: n } = t;
if (n === c && e === s) return;
(s = e), (c = n), r.push(v(e, n));
const o = i[e] || (i[e] = Object.create(null));
o[n] || (o[n] = []);
}),
o.pending.forEach((t) => {
const { provider: e, prefix: n, name: o } = t,
r = v(e, n),
s = r.pendingIcons || (r.pendingIcons = new Set());
s.has(o) || (s.add(o), i[e][n].push(o));
}),
r.forEach((t) => {
const { provider: e, prefix: n } = t;
i[e][n].length &&
(function (t, e) {
t.iconsToLoad
? (t.iconsToLoad = t.iconsToLoad.concat(e).sort())
: (t.iconsToLoad = e),
t.iconsQueueFlag ||
((t.iconsQueueFlag = !0),
setTimeout(() => {
t.iconsQueueFlag = !1;
const { provider: e, prefix: n } = t,
o = t.iconsToLoad;
let i;
delete t.iconsToLoad,
o &&
(i = F(e)) &&
i.prepare(e, n, o).forEach((n) => {
B(e, n, (e) => {
if ("object" != typeof e)
n.icons.forEach((e) => {
t.missing.add(e);
});
else
try {
const n = x(t, e);
if (!n.length) return;
const o = t.pendingIcons;
o &&
n.forEach((t) => {
o.delete(t);
}),
lt(t, e);
} catch (t) {
console.error(t);
}
dt(t);
});
});
}));
})(t, i[e][n]);
}),
e
? (function (t, e, n) {
const o = E++,
i = I.bind(null, n, o);
if (!e.pending.length) return i;
const r = { id: o, icons: e, callback: t, abort: i };
return (
n.forEach((t) => {
(t.loaderCallbacks || (t.loaderCallbacks = [])).push(r);
}),
i
);
})(e, o, r)
: ft
);
},
pt = (t) =>
new Promise((e, o) => {
const i = "string" == typeof t ? l(t, !0) : t;
i
? ht([i || t], (r) => {
if (r.length && i) {
const t = A(i);
if (t) return void e({ ...n, ...t });
}
o(t);
})
: o(t);
});
function gt(t, e) {
const n = "string" == typeof t ? l(t, !0, !0) : null;
if (!n) {
const e = (function (t) {
try {
const e = "string" == typeof t ? JSON.parse(t) : t;
if ("string" == typeof e.body) return { ...e };
} catch (t) {}
})(t);
return { value: t, data: e };
}
const o = A(n);
if (void 0 !== o || !n.prefix) return { value: t, name: n, data: o };
const i = ht([n], () => e(t, n, A(n)));
return { value: t, name: n, loading: i };
}
function mt(t) {
return t.hasAttribute("inline");
}
let bt = !1;
try {
bt = 0 === navigator.vendor.indexOf("Apple");
} catch (t) {}
const yt = /(-?[0-9.]*[0-9]+[0-9.]*)/g,
vt = /^-?[0-9.]*[0-9]+[0-9.]*$/g;
function xt(t, e, n) {
if (1 === e) return t;
if (((n = n || 100), "number" == typeof t)) return Math.ceil(t * e * n) / n;
if ("string" != typeof t) return t;
const o = t.split(yt);
if (null === o || !o.length) return t;
const i = [];
let r = o.shift(),
s = vt.test(r);
for (;;) {
if (s) {
const t = parseFloat(r);
isNaN(t) ? i.push(r) : i.push(Math.ceil(t * e * n) / n);
} else i.push(r);
if (((r = o.shift()), void 0 === r)) return i.join("");
s = !s;
}
}
function wt(t, e) {
const o = { ...n, ...t },
i = { ...r, ...e },
s = { left: o.left, top: o.top, width: o.width, height: o.height };
let c = o.body;
[o, i].forEach((t) => {
const e = [],
n = t.hFlip,
o = t.vFlip;
let i,
r = t.rotate;
switch (
(n
? o
? (r += 2)
: (e.push(
"translate(" +
(s.width + s.left).toString() +
" " +
(0 - s.top).toString() +
")"
),
e.push("scale(-1 1)"),
(s.top = s.left = 0))
: o &&
(e.push(
"translate(" +
(0 - s.left).toString() +
" " +
(s.height + s.top).toString() +
")"
),
e.push("scale(1 -1)"),
(s.top = s.left = 0)),
r < 0 && (r -= 4 * Math.floor(r / 4)),
(r %= 4),
r)
) {
case 1:
(i = s.height / 2 + s.top),
e.unshift("rotate(90 " + i.toString() + " " + i.toString() + ")");
break;
case 2:
e.unshift(
"rotate(180 " +
(s.width / 2 + s.left).toString() +
" " +
(s.height / 2 + s.top).toString() +
")"
);
break;
case 3:
(i = s.width / 2 + s.left),
e.unshift("rotate(-90 " + i.toString() + " " + i.toString() + ")");
}
r % 2 == 1 &&
(s.left !== s.top && ((i = s.left), (s.left = s.top), (s.top = i)),
s.width !== s.height &&
((i = s.width), (s.width = s.height), (s.height = i))),
e.length && (c = '' + c + "");
});
const a = i.width,
u = i.height,
l = s.width,
f = s.height;
let d, h;
null === a
? ((h = null === u ? "1em" : "auto" === u ? f : u), (d = xt(h, l / f)))
: ((d = "auto" === a ? l : a),
(h = null === u ? xt(d, f / l) : "auto" === u ? f : u));
const p = {},
g = (t, e) => {
((t) => "unset" === t || "undefined" === t || "none" === t)(e) ||
(p[t] = e.toString());
};
return (
g("width", d),
g("height", h),
(p.viewBox =
s.left.toString() +
" " +
s.top.toString() +
" " +
l.toString() +
" " +
f.toString()),
{ attributes: p, body: c }
);
}
let kt = (() => {
let t;
try {
if (((t = fetch), "function" == typeof t)) return t;
} catch (t) {}
})();
function jt(t) {
kt = t;
}
function At() {
return kt;
}
const _t = {
prepare: (t, e, n) => {
const o = [],
i = (function (t, e) {
const n = U(t);
if (!n) return 0;
let o;
if (n.maxURL) {
let t = 0;
n.resources.forEach((e) => {
const n = e;
t = Math.max(t, n.length);
});
const i = e + ".json?icons=";
o = n.maxURL - t - n.path.length - i.length;
} else o = 0;
return o;
})(t, e),
r = "icons";
let s = { type: r, provider: t, prefix: e, icons: [] },
c = 0;
return (
n.forEach((n, a) => {
(c += n.length + 1),
c >= i &&
a > 0 &&
(o.push(s),
(s = { type: r, provider: t, prefix: e, icons: [] }),
(c = n.length)),
s.icons.push(n);
}),
o.push(s),
o
);
},
send: (t, e, n) => {
if (!kt) return void n("abort", 424);
let o = (function (t) {
if ("string" == typeof t) {
const e = U(t);
if (e) return e.path;
}
return "/";
})(e.provider);
switch (e.type) {
case "icons": {
const t = e.prefix,
n = e.icons.join(",");
o += t + ".json?" + new URLSearchParams({ icons: n }).toString();
break;
}
case "custom": {
const t = e.uri;
o += "/" === t.slice(0, 1) ? t.slice(1) : t;
break;
}
default:
return void n("abort", 400);
}
let i = 503;
kt(t + o)
.then((t) => {
const e = t.status;
if (200 === e) return (i = 501), t.json();
setTimeout(() => {
n(
(function (t) {
return 404 === t;
})(e)
? "abort"
: "next",
e
);
});
})
.then((t) => {
"object" == typeof t && null !== t
? setTimeout(() => {
n("success", t);
})
: setTimeout(() => {
404 === t ? n("abort", t) : n("next", i);
});
})
.catch(() => {
n("next", i);
});
},
};
function Ct(t, e) {
switch (t) {
case "local":
case "session":
ot[t] = e;
break;
case "all":
for (const t in ot) ot[t] = e;
}
}
const Ot = "data-style";
let St = "";
function It(t) {
St = t;
}
function Et(t, e) {
let n = Array.from(t.childNodes).find(
(t) => t.hasAttribute && t.hasAttribute(Ot)
);
n ||
((n = document.createElement("style")),
n.setAttribute(Ot, Ot),
t.appendChild(n)),
(n.textContent =
":host{display:inline-block;vertical-align:" +
(e ? "-0.125em" : "0") +
"}span,svg{display:block}" +
St);
}
function Mt(t, e) {
let n =
-1 === t.indexOf("xlink:")
? ""
: ' xmlns:xlink="http://www.w3.org/1999/xlink"';
for (const t in e) n += " " + t + '="' + e[t] + '"';
return '";
}
const Tt = { "background-color": "currentColor" },
Ft = { "background-color": "transparent" },
Nt = { image: "var(--svg)", repeat: "no-repeat", size: "100% 100%" },
Pt = { "-webkit-mask": Tt, mask: Tt, background: Ft };
for (const t in Pt) {
const e = Pt[t];
for (const n in Nt) e[t + "-" + n] = Nt[n];
}
function Rt(t) {
return t ? t + (t.match(/^[-0-9.]+$/) ? "px" : "") : "inherit";
}
function Lt(t, e) {
const o = e.icon.data,
i = e.customisations,
r = wt(o, i);
i.preserveAspectRatio &&
(r.attributes.preserveAspectRatio = i.preserveAspectRatio);
const s = e.renderedMode;
let c;
if ("svg" === s)
c = (function (t) {
const e = document.createElement("span"),
n = t.attributes;
let o = "";
return (
n.width || (o = "width: inherit;"),
n.height || (o += "height: inherit;"),
o && (n.style = o),
(e.innerHTML = Mt(t.body, n)),
e.firstChild
);
})(r);
else
c = (function (t, e, n) {
const o = document.createElement("span");
let i = t.body;
-1 !== i.indexOf("/g, "%3E")
.replace(/\s+/g, " ");
})(u) +
'")'),
c = o.style,
a = {
"--svg": s,
width: Rt(r.width),
height: Rt(r.height),
...(n ? Tt : Ft),
};
var u;
for (const t in a) c.setProperty(t, a[t]);
return o;
})(r, { ...n, ...o }, "mask" === s);
const a = Array.from(t.childNodes).find((t) => {
const e = t.tagName && t.tagName.toUpperCase();
return "SPAN" === e || "SVG" === e;
});
a
? "SPAN" === c.tagName && a.tagName === c.tagName
? a.setAttribute("style", c.getAttribute("style"))
: t.replaceChild(c, a)
: t.appendChild(c);
}
function zt(t, e, n) {
return {
rendered: !1,
inline: e,
icon: t,
lastRender: n && (n.rendered ? n : n.lastRender),
};
}
!(function (t = "iconify-icon") {
let e, n;
try {
(e = window.customElements), (n = window.HTMLElement);
} catch (t) {
return;
}
if (!e || !n) return;
const o = e.get(t);
if (o) return o;
const i = ["icon", "mode", "inline", "width", "height", "rotate", "flip"],
r = class extends n {
_shadowRoot;
_state;
_checkQueued = !1;
constructor() {
super();
const t = (this._shadowRoot = this.attachShadow({ mode: "open" })),
e = mt(this);
Et(t, e), (this._state = zt({ value: "" }, e)), this._queueCheck();
}
static get observedAttributes() {
return i.slice(0);
}
attributeChangedCallback(t) {
if ("inline" === t) {
const t = mt(this),
e = this._state;
t !== e.inline && ((e.inline = t), Et(this._shadowRoot, t));
} else this._queueCheck();
}
get icon() {
const t = this.getAttribute("icon");
if (t && "{" === t.slice(0, 1))
try {
return JSON.parse(t);
} catch (t) {}
return t;
}
set icon(t) {
"object" == typeof t && (t = JSON.stringify(t)),
this.setAttribute("icon", t);
}
get inline() {
return mt(this);
}
set inline(t) {
t
? this.setAttribute("inline", "true")
: this.removeAttribute("inline");
}
restartAnimation() {
const t = this._state;
if (t.rendered) {
const e = this._shadowRoot;
if ("svg" === t.renderedMode)
try {
return void e.lastChild.setCurrentTime(0);
} catch (t) {}
Lt(e, t);
}
}
get status() {
const t = this._state;
return t.rendered
? "rendered"
: null === t.icon.data
? "failed"
: "loading";
}
_queueCheck() {
this._checkQueued ||
((this._checkQueued = !0),
setTimeout(() => {
this._check();
}));
}
_check() {
if (!this._checkQueued) return;
this._checkQueued = !1;
const t = this._state,
e = this.getAttribute("icon");
if (e !== t.icon.value) return void this._iconChanged(e);
if (!t.rendered) return;
const n = this.getAttribute("mode"),
o = a(this);
(t.attrMode !== n ||
(function (t, e) {
for (const n in c) if (t[n] !== e[n]) return !0;
return !1;
})(t.customisations, o)) &&
this._renderIcon(t.icon, o, n);
}
_iconChanged(t) {
const e = gt(t, (t, e, n) => {
const o = this._state;
if (o.rendered || this.getAttribute("icon") !== t) return;
const i = { value: t, name: e, data: n };
i.data ? this._gotIconData(i) : (o.icon = i);
});
e.data
? this._gotIconData(e)
: (this._state = zt(e, this._state.inline, this._state));
}
_gotIconData(t) {
(this._checkQueued = !1),
this._renderIcon(t, a(this), this.getAttribute("mode"));
}
_renderIcon(t, e, n) {
const o = (function (t, e) {
switch (e) {
case "svg":
case "bg":
case "mask":
return e;
}
return "style" === e || (!bt && -1 !== t.indexOf(" {
t in r.prototype ||
Object.defineProperty(r.prototype, t, {
get: function () {
return this.getAttribute(t);
},
set: function (e) {
null !== e ? this.setAttribute(t, e) : this.removeAttribute(t);
},
});
});
const s = (function () {
let t;
T("", _t), j(!0);
try {
t = window;
} catch (t) {}
if (t) {
if ((ut(), void 0 !== t.IconifyPreload)) {
const e = t.IconifyPreload,
n = "Invalid IconifyPreload syntax.";
"object" == typeof e &&
null !== e &&
(e instanceof Array ? e : [e]).forEach((t) => {
try {
("object" != typeof t ||
null === t ||
t instanceof Array ||
"object" != typeof t.icons ||
"string" != typeof t.prefix ||
!C(t)) &&
console.error(n);
} catch (t) {
console.error(n);
}
});
}
if (void 0 !== t.IconifyProviders) {
const e = t.IconifyProviders;
if ("object" == typeof e && null !== e)
for (const t in e) {
const n = "IconifyProviders[" + t + "] is invalid.";
try {
const o = e[t];
if ("object" != typeof o || !o || void 0 === o.resources)
continue;
D(t, o) || console.error(n);
} catch (t) {
console.error(n);
}
}
}
}
return {
enableCache: (t) => Ct(t, !0),
disableCache: (t) => Ct(t, !1),
iconExists: O,
getIcon: S,
listIcons: w,
addIcon: _,
addCollection: C,
calculateSize: xt,
buildIcon: wt,
loadIcons: ht,
loadIcon: pt,
addAPIProvider: D,
appendCustomStyle: It,
_api: {
getAPIConfig: U,
setAPIModule: T,
sendAPIQuery: B,
setFetch: jt,
getFetch: At,
listAPIProviders: J,
},
};
})();
for (const t in s) r[t] = r.prototype[t] = s[t];
e.define(t, r);
})();
})();